Computerized characters that are controlled by and represent users in a virtual environment are commonly referred to as avatars. Avatars may take a wide variety of forms. Examples of avatars include virtual humans, animals, plant life, and even certain types of food. Some computer products include avatars with facial expressions that are driven by a user's facial expressions. One example of such a product is the Pocket Avatars messaging app developed by INTEL.
Some conventional products animate an avatar by rendering a series of blend shapes. Each blend shape in a series rendered by a conventional avatar animation product defines a facial expression of the avatar and corresponds to a facial expression exhibited by the user. Avatar animation products may identify each blend shape to include in the series by analyzing an image of the user's face, identifying the user's facial expression, identifying a blend shape that corresponds to the facial expression, and generating a frame of avatar animation in which the blend shape corresponding to the facial expression is depicted. Thus, conventional avatar animation products map a user's facial expression to a blend shape in a one to one relationship and on a frame by frame basis. This approach works well where the avatar has a human face.